🌎 rns.kin.earth git 🌍
Commit abae9bf4bf6031b1765b6863234899b403d36b0b
Parents : 47107f8
Author : K8 <8e4525cda44827204097dbcadf90a94c>
Signature : T66BB85Valid, signed by author
Date : 2026-05-28T13:03:37-06:00
Configurable logfile path.
Changes
2 files changed, 18 insertions(+), 7 deletions(-)
Diff
diff --git a/RNS/Reticulum.py b/RNS/Reticulum.py
index 77b742f5..48fa75c2 100755
--- a/RNS/Reticulum.py
+++ b/RNS/Reticulum.py
@@ -212,8 +212,9 @@ class Reticulum:
"""
return Reticulum.__instance
- def __init__(self,configdir=None, loglevel=None, logdest=None, verbosity=None,
- require_shared_instance=False, shared_instance_type=None):
+ def __init__(self, configdir=None, loglevel=None, logdest=None,
+ logfile=None, verbosity=None, require_shared_instance=False,
+ shared_instance_type=None):
"""
Initialises and starts a Reticulum instance. This must be
done before any other operations, and Reticulum will not
@@ -238,11 +239,15 @@ class Reticulum:
if logdest == RNS.LOG_FILE:
RNS.logdest = RNS.LOG_FILE
- RNS.logfile = RNS.logfile or Reticulum.configdir+"/logfile"
+
+ if logfile:
+ RNS.logfile = logfile
+ else:
+ RNS.logfile = RNS.logfile or Reticulum.configdir+"/logfile"
elif callable(logdest):
RNS.logdest = RNS.LOG_CALLBACK
RNS.logcall = logdest
-
+
Reticulum.configpath = Reticulum.configdir+"/config"
Reticulum.storagepath = Reticulum.configdir+"/storage"
Reticulum.cachepath = Reticulum.configdir+"/storage/cache"
diff --git a/RNS/Utilities/rnsd.py b/RNS/Utilities/rnsd.py
index 515fffba..b11da871 100755
--- a/RNS/Utilities/rnsd.py
+++ b/RNS/Utilities/rnsd.py
@@ -37,7 +37,7 @@ import time
from RNS._version import __version__
-def program_setup(configdir, verbosity = 0, quietness = 0, service = False, interactive=False):
+def program_setup(configdir, logfile, verbosity = 0, quietness = 0, service = False, interactive=False):
targetverbosity = verbosity-quietness
if service:
@@ -46,7 +46,7 @@ def program_setup(configdir, verbosity = 0, quietness = 0, service = False, inte
else:
targetlogdest = RNS.LOG_STDOUT
- reticulum = RNS.Reticulum(configdir=configdir, verbosity=targetverbosity, logdest=targetlogdest)
+ reticulum = RNS.Reticulum(configdir=configdir, logfile=logfile, verbosity=targetverbosity, logdest=targetlogdest)
if reticulum.is_connected_to_shared_instance:
RNS.log("Started rnsd version {version} connected to another shared local instance, this is probably NOT what you want!".format(version=__version__), RNS.LOG_WARNING)
else:
@@ -63,6 +63,7 @@ def main():
try:
parser = argparse.ArgumentParser(description="Reticulum Network Stack Daemon")
parser.add_argument("--config", action="store", default=None, help="path to alternative Reticulum config directory", type=str)
+ parser.add_argument("--logfile", action="store", default=None, help="path to alternative Reticulum logfile", type=str)
parser.add_argument('-v', '--verbose', action='count', default=0)
parser.add_argument('-q', '--quiet', action='count', default=0)
parser.add_argument('-s', '--service', action='store_true', default=False, help="rnsd is running as a service and should log to file")
@@ -81,7 +82,12 @@ def main():
else:
configarg = None
- program_setup(configdir = configarg, verbosity=args.verbose, quietness=args.quiet, service=args.service, interactive=args.interactive)
+ if args.logfile:
+ logfilearg = args.logfile
+ else:
+ logfilearg = None
+
+ program_setup(configdir=configarg, logfile=logfilearg, verbosity=args.verbose, quietness=args.quiet, service=args.service, interactive=args.interactive)
except KeyboardInterrupt:
print("")
Served by rngit 1.5.2 - Generated in 0.06s